* lisp/emacs-lisp/cl-preloaded.el (user-ptr): Add predicate
authorStefan Monnier <monnier@iro.umontreal.ca>
Mon, 18 Mar 2024 13:38:23 +0000 (09:38 -0400)
committerStefan Monnier <monnier@iro.umontreal.ca>
Mon, 18 Mar 2024 13:38:23 +0000 (09:38 -0400)
lisp/emacs-lisp/cl-preloaded.el

index cba56e0bbd4235045fcbe6753561451051237eac..f7757eae9c0ea6ded95175592cc1307ce5f11323 100644 (file)
           (:predicate (setq predicate val))
           (_ (error "Unknown keyword arg: %S" kw)))))
     `(progn
-       ,(if predicate `(put ',name 'cl-deftype-satisfies #',predicate))
+       ,(if predicate `(put ',name 'cl-deftype-satisfies #',predicate)
+          ;; (message "Missing predicate for: %S" name)
+          nil)
        (put ',name 'cl--class
             (built-in-class--make ',name ,docstring
                                   (mapcar (lambda (type)
 (cl--define-built-in-type tree-sitter-compiled-query atom)
 (cl--define-built-in-type tree-sitter-node atom)
 (cl--define-built-in-type tree-sitter-parser atom)
-(cl--define-built-in-type user-ptr atom)
+(cl--define-built-in-type user-ptr atom
+  nil :predicate user-ptrp) ;; FIXME: Shouldn't it be called `user-ptr-p'?
 (cl--define-built-in-type font-object atom)
 (cl--define-built-in-type font-entity atom)
 (cl--define-built-in-type font-spec atom)